{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Análisis unidimensional\n", " \n", "\n", "## Objetivo\n", "\n", "Como ya se dijo anteriormente, el análisis unidimensional consiste en analizar individualmente a las variables (columnas de un DataFrame) para conocer sus características y su naturaleza. Para ello, se emplea mayormente gráficos, aunque tambien se pueden calcular valores estadísticos como el promdio, la mediana, la kurtosis, entre muchos otros.\n", "\n", "## Ejemplo de como graficar\n", "\n", "- [Ejemplo visualización](#8)\n", "\n", "## Técnicas de análisis\n", "\n", "1. [DataFrame.describe()](#3)\n", "2. [Indicadores de tendencia central](#1)\n", "3. [Indicadores de dispersión](#2)\n", "4. [Gráficos de distribución](#4)\n", "5. [Gráficos de comparación](#5)\n", "6. [Gráficos de composición](#6)\n", "7. [Utilizando Groupby](#7)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Importar lbrerías y cargar datos\n", "__[Fuente de los datos](https://archive.ics.uci.edu/ml/datasets/Forest+Fires)__" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
XYmonthdayFFMCDMCDCISItempRHwindrainarea
075marfri86.226.294.35.18.2516.70.00.0
174octtue90.635.4669.16.718.0330.90.00.0
274octsat90.643.7686.96.714.6331.30.00.0
386marfri91.733.377.59.08.3974.00.20.0
486marsun89.351.3102.29.611.4991.80.00.0
\n", "
" ], "text/plain": [ " X Y month day FFMC DMC DC ISI temp RH wind rain area\n", "0 7 5 mar fri 86.2 26.2 94.3 5.1 8.2 51 6.7 0.0 0.0\n", "1 7 4 oct tue 90.6 35.4 669.1 6.7 18.0 33 0.9 0.0 0.0\n", "2 7 4 oct sat 90.6 43.7 686.9 6.7 14.6 33 1.3 0.0 0.0\n", "3 8 6 mar fri 91.7 33.3 77.5 9.0 8.3 97 4.0 0.2 0.0\n", "4 8 6 mar sun 89.3 51.3 102.2 9.6 11.4 99 1.8 0.0 0.0" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import os\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "\n", "# Cargarlos desde la web\n", "data = pd.read_csv('http://www.dsi.uminho.pt/~pcortez/forestfires/forestfires.csv')\n", "\n", "data.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## DataFrame.describe()\n", "\n", "\n", "Llamando a la función`describe()` de _Pandas_ se obtiene una matriz la cual tiene varios indicadores para cada una de las columnas. Con estos indicaroes se puede tener una visión general de los datos." ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
XYmonthdayFFMCDMCDCISItempRHwindrainareamonth_number
count517.000000517.000000517517517.000000517.000000517.000000517.000000517.000000517.000000517.000000517.000000517.000000517.000000
uniqueNaNNaN127NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
topNaNNaNaugsunNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
freqNaNNaN18495NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
mean4.6692464.299807NaNNaN90.644681110.872340547.9400399.02166318.88916844.2882014.0176020.02166312.8472927.475822
std2.3137781.229900NaNNaN5.52011164.046482248.0661924.5594775.80662516.3174691.7916530.29595963.6558182.275990
min1.0000002.000000NaNNaN18.7000001.1000007.9000000.0000002.20000015.0000000.4000000.0000000.0000001.000000
25%3.0000004.000000NaNNaN90.20000068.600000437.7000006.50000015.50000033.0000002.7000000.0000000.0000007.000000
50%4.0000004.000000NaNNaN91.600000108.300000664.2000008.40000019.30000042.0000004.0000000.0000000.5200008.000000
75%7.0000005.000000NaNNaN92.900000142.400000713.90000010.80000022.80000053.0000004.9000000.0000006.5700009.000000
max9.0000009.000000NaNNaN96.200000291.300000860.60000056.10000033.300000100.0000009.4000006.4000001090.84000012.000000
\n", "
" ], "text/plain": [ " X Y month day FFMC DMC DC \\\n", "count 517.000000 517.000000 517 517 517.000000 517.000000 517.000000 \n", "unique NaN NaN 12 7 NaN NaN NaN \n", "top NaN NaN aug sun NaN NaN NaN \n", "freq NaN NaN 184 95 NaN NaN NaN \n", "mean 4.669246 4.299807 NaN NaN 90.644681 110.872340 547.940039 \n", "std 2.313778 1.229900 NaN NaN 5.520111 64.046482 248.066192 \n", "min 1.000000 2.000000 NaN NaN 18.700000 1.100000 7.900000 \n", "25% 3.000000 4.000000 NaN NaN 90.200000 68.600000 437.700000 \n", "50% 4.000000 4.000000 NaN NaN 91.600000 108.300000 664.200000 \n", "75% 7.000000 5.000000 NaN NaN 92.900000 142.400000 713.900000 \n", "max 9.000000 9.000000 NaN NaN 96.200000 291.300000 860.600000 \n", "\n", " ISI temp RH wind rain \\\n", "count 517.000000 517.000000 517.000000 517.000000 517.000000 \n", "unique NaN NaN NaN NaN NaN \n", "top NaN NaN NaN NaN NaN \n", "freq NaN NaN NaN NaN NaN \n", "mean 9.021663 18.889168 44.288201 4.017602 0.021663 \n", "std 4.559477 5.806625 16.317469 1.791653 0.295959 \n", "min 0.000000 2.200000 15.000000 0.400000 0.000000 \n", "25% 6.500000 15.500000 33.000000 2.700000 0.000000 \n", "50% 8.400000 19.300000 42.000000 4.000000 0.000000 \n", "75% 10.800000 22.800000 53.000000 4.900000 0.000000 \n", "max 56.100000 33.300000 100.000000 9.400000 6.400000 \n", "\n", " area month_number \n", "count 517.000000 517.000000 \n", "unique NaN NaN \n", "top NaN NaN \n", "freq NaN NaN \n", "mean 12.847292 7.475822 \n", "std 63.655818 2.275990 \n", "min 0.000000 1.000000 \n", "25% 0.000000 7.000000 \n", "50% 0.520000 8.000000 \n", "75% 6.570000 9.000000 \n", "max 1090.840000 12.000000 " ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_description = data.describe(include='all')\n", "data_description" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualización\n", "\n", "\n", "Esto es solamente un ejemplo de la manipulación de las librerías para graficar. En la celda de abajo, se grafica la distribución de los valores de la *temperatura* y se añaden líneas al gráfico las cuales muestran los indicares de tendencia central así como los límites de los valores atípicos.\n", "\n", "Para graficar los datos se utilizan estas dos librerías:\n", "\n", "- [Seaborn](https://seaborn.pydata.org/generated/seaborn.kdeplot.html)\n", "\n", "- [matplotlib](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.axvline.html?highlight=axvline)\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "\n", "sns.set(color_codes=True)\n", "sns.kdeplot(data['temp'], shade=True)\n", "\n", "# Agrega lineas verticales en los indicadores de la tendencia central\n", "plt.axvline(data['temp'].mean(), color='g') # Agrega una línea color verde, la cual indica el promedio\n", "plt.axvline(data['temp'].median(), color='black') # Agrega una línea color negro, la cual indica la mediana\n", "plt.axvline(data_description['temp']['25%'], color='black') # Agrega una línea color negro, la cual indica el Q1\n", "plt.axvline(data_description['temp']['75%'], color='black') # Agrega una línea color negro, la cual indica el Q3\n", "\n", "IQR = data_description['temp']['75%'] - data_description['temp']['25%']\n", "\n", "upper_outliers = data_description['temp']['75%'] + 1.5*IQR\n", "lower_outliers = data_description['temp']['25%'] - 1.5*IQR\n", "\n", "# Agrega dos líneas de color rojo, las cuales indican los límites para los valores atípicos\n", "plt.axvline(upper_outliers, color='r') \n", "plt.axvline(lower_outliers, color='r')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Indicadores de tendencia central \n", "\n", "\n", "Los indicadores que son sirven para medir la tendencia central son:\n", "\n", "- **Media**" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "18.88916827852998, 18.88916827852998, 18.88916827852998\n" ] } ], "source": [ "from statistics import mean\n", "\n", "a1 = data['temp'].mean() # utilizando la librería pandas\n", "a2 = mean(data['temp']) # utilizando la librería statistics\n", "a3 = np.mean(data['temp']) # utilizando la librería numpy\n", "\n", "print(f'{a1}, {a2}, {a3}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Mediana**" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "19.3, 19.3, 19.3\n" ] } ], "source": [ "from statistics import median\n", "\n", "a1 = data['temp'].median() # pandas\n", "a2 = median(data['temp']) # statistics\n", "a3 = np.median(data['temp']) # numpy\n", "\n", "print(f'{a1}, {a2}, {a3}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Cuantiles**\n", "\n", "Son valores que dividen a los datos en cuatro partes iguales.\n", "\n", " - 1er cuantil (Q1) \t25% de los datos es menor que o igual a este valor.\n", " - 2do cuantil (Q2) \tLa mediana. 50% de los datos es menor que o igual a este valor.\n", " - 3er cuantil (Q3) \t75% de los datos es menor que o igual a este valor. \n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Indicadores de dispersión\n", "\n", "\n", "Estos indicares muestran cuan dispersos están los datos.\n", "\n", "- **Varianza, desviación estándar**\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Desviación estándar: 5.806625349573505, 5.806625349573505, 5.801006939598366\n", "Varianza: 33.71689795030963, 33.71689795030963, 33.65168151326841\n" ] } ], "source": [ "from statistics import stdev\n", "from statistics import variance\n", "\n", "std1 = data['temp'].std() # pandas\n", "std2 = stdev(data['temp']) # statistics\n", "std3 = np.std(data['temp']) # numpy\n", "\n", "varianza1 = data['temp'].var() # pandas\n", "varianza2 = variance(data['temp']) # statistics\n", "varianza3 = np.var(data['temp']) # numpy\n", "\n", "print(f'Desviación estándar: {std1}, {std2}, {std3}')\n", "print(f'Varianza: {varianza1}, {varianza2}, {varianza3}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Valores atípicos**\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Asimetría (skweness). Grado de simetría de la distribución.**\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-0.331172237347285 -0.3302106140354586\n" ] } ], "source": [ "from scipy.stats import skew\n", "\n", "a1 = data['temp'].skew() # pandas\n", "a2 = skew(data['temp']) # scipy\n", "\n", "print(a1, a2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Curtosis. Indicador de la \"anchura\" de una distribución**\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.1361655076587991 0.12326917606611909\n" ] } ], "source": [ "from scipy.stats import kurtosis\n", "\n", "a1 = data['temp'].kurt() # pandas\n", "a2 = kurtosis(data['temp']) # scipy\n", "\n", "print(a1, a2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gráficos de distribución\n", "\n", "\n", "Para visualizar los gráficos, se puede utilizar, en vez de librerias externas como en el ejemplo de arriba, la librería *pandas*. __[Panda's Plots](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html)__ \n", "\n", "- **[Histograma](https://es.wikipedia.org/wiki/Histograma)**\n", "\n", "Permite visualizar las frecuencias de diferentes categorías o rangos de valores (clases o bins)\n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data['temp'].plot.hist(title='Histograma Temp', color='c', bins=20)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- __[Diagrama de Densidad](https://es.wikipedia.org/wiki/Funci%C3%B3n_de_densidad_de_probabilidad)__\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data['temp'].plot.density(title='Densidad Temp', color='c')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- __[Diagrama de Caja](https://es.wikipedia.org/wiki/Diagrama_de_caja)__ \n", "\n", "Este es especialmente útil para la identificación de valores atípicos.\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data['temp'].plot.box(title='Box Temp', color='c')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gráficos de comparación\n", "\n", "\n", "__[Panda's Plots](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html)__ \n", "\n", "- __[Gráfico de Barras](https://es.wikipedia.org/wiki/Diagrama_de_barras)__ \n", "\n", "Presenta datos **cualitativos** con barras rectangulares con alturas o longitudes proporcionales a los valores que representan. (No son histogramas!!)\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = pd.DataFrame({'lab':['A', 'B', 'C'], 'val':[10, 30, 20]})\n", "df.plot.bar(x='lab', y='val', rot=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- __[Gráfico de lineas](https://en.wikipedia.org/wiki/Line_chart)__\n", "\n", "Presenta una serie de valores (marcas) conectados por líneas. Se emplean frecuentemente para visualizar tendencias a lo largo del tiempo.\n", "\n", "\n", "\n", "Para ambos tipos de gráficos, se recomienda aplicarlos para un número reducido de variables (~ 6)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gráficos de composición\n", "\n", "\n", "__[Panda's Plots](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html)__ \n", "\n", "- __[Torta](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html)__ \n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = pd.DataFrame({'masa': [0.330, 4.87 , 5.97],\n", " 'radio': [2439.7, 6051.8, 6378.1]},\n", " index=['Mercurio', 'Venus', 'Tierra'])\n", "\n", "# Las dos maneras son equivalentes\n", "df.plot.pie(y='masa', figsize=(5, 5))\n", "df[\"masa\"].plot.pie()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- __[Barras apiladas](https://businessq-software.com/2017/02/21/stacked-bar-chart-definition-and-examples-businessq/)__\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "df = pd.DataFrame({'vestimenta': [8261.68, 7875.87 , 4990.23],\n", " 'equipamiento': [4810.34, 3126.58, 4923.48],\n", " 'accesorios': [1536.57, 2019.81, 1472.59],},\n", " index=['Cherry St', 'Strawberry Mall', 'Peach St'])\n", "df" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX8AAAD7CAYAAACCEpQdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAf7UlEQVR4nO3de1RU573/8ffAIF5AETuD/oixSXVpCfXScuIlKURtBILEBMyqAUtz2trGRpvYlBWWYggntSZKJDUWcrJWruZW6gWRToYkTUpsiUZpoyElOUmDeMEOF6+DgjAzvz9sp6GogMJw2Z/XWq7lfGfv2c/jM/OZ7TN7njF5PB4PIiJiKH693QAREfE9hb+IiAEp/EVEDEjhLyJiQAp/EREDUviLiBiQwl9ExIDMvd2AzjpxohG3e2B+JWHUqCAaGpy93Qy5Qhq//msgj52fn4mRI4dd8v5+E/5ut2fAhj8woPtmBBq//suoY6dpHxERA1L4i4gYUL+Z9rkYj8fDiRN1nD/fBPTf/7rV1vrhdruvYE8TgwYNZuRICyaTqdvbJSIDV78Of6fzFCaTibCwazCZ+u9/YsxmP1pbux7+Ho+bkyfrcTpPERwc0v0NE5EBq/8mJnDunJPg4JB+HfxXw2TyIzh4JOfODcyrFUSk5/Tr1HS7Xfj79+v/vFw1f38zbrert5shIv1Mvw5/wPBz3Ubvv4hcmQF12hw8fAiDA7u/S03NrZw5fa7bH1dE2ho5YhDmQYE+PabFEuyzY7Web+bEqfM+O97lDKjwHxxoJvHBHd3+uDufWMCZbn9UEflP5kGBfLEmubeb0WOuX7UVUPgPOH/5yz5eeuk5PB6oqTnCLbfMZdiwYezaVYrH4yEn59e8++7b2O02mprO4efnR3b2WsaP/xqbNj3J3r178Pf34+abY/jBD35MXV0ta9c+itN5hoaGer7znViWLl3e290UkQGg38/59zV/+9vHrFz5MJs3F1BYuIWQkJE8++xmxo+fwNtvv8l775WyadP/snlzAd/+9i1s3/47jh2rYffuMl588TXy85/jyJHDNDc389ZbJdx6ayzPPPMCL774Otu3b+HkyZO93UURGQB05t/Nrr/+a4SFjQZgxIgQoqJuBCAsbDRnzpzmkUd+ydtvv8nhw4fYs6eMCRMmYrFYCQwMZOnSHzBr1rdZsmQpgYGBpKR8j7/8ZR+vvrqZqqq/09raQlPTOSCk9zooIgOCzvy7mdnc9v3U39/f+/faWgc/+cl/43SeYcaMWcTHJ+LxeDCbzTzzzAv86EdLOXXqFPfe+98cOlTNU0/l8rvfvc7o0WP4/vd/yIgRIXg8/febzCLSdyj8feiTT/7GNdeM5bvfTSUiIpLdu8twu118+uknLFv2Y6ZMmcayZQ/w1a9ez6FD1ezbt4eUlO8xZ853qK11UFdXe4XLQIiItKVpHx/6r/+aweef/x+LF99FQEAAERGRfPHF35k4cRKRkZNJS/sugwcPZsKEicyYMYtz587y6KMPExQUTGhoKJMmRVBTc5Tw8Gt6uysi0s+ZPP1kHqGhwdlu3e1//KOa0aPHeW/31+v8r3Rtn3/5z38H8S2LJZi6Ol0M3B0sluABf6mnr54rfn4mRo0KuuT9nUrKd955h02bNnH27FluvvlmMjMzKSsrY+3atTQ3NxMfH8+KFSsAqKysJDMzE6fTSVRUFNnZ2ZjNZmpqakhPT6ehoYHrrruOnJwchg279K/MXIkzp8/penwRkU7ocM7/8OHDZGVlkZeXx86dO/nb3/5GaWkpK1euJC8vD5vNRkVFBaWlpQCkp6ezevVqSkpK8Hg8FBQUAJCdnU1KSgp2u53IyEjy8vJ6tmciInJJHZ75v/XWW9x2222MHn3h8sXc3Fyqq6sZN24cY8eOBSAxMRG73c748eNpampi6tSpACQlJbFx40buuusu9u7dy29+8xtvffHixaSnp/dQt8TItESASMc6DP/q6moCAgL44Q9/SF1dHbNnz2bChAlYLBbvNlarFYfDQW1tbZu6xWLB4XBw4sQJgoKCvJdB/qsu0hO0RIBIxzoMf5fLxb59+9i8eTNDhw7lpz/9KUOGDGm3nclkuug16Jerd8XFPriorfXDbB4YV6teTT/8/Px8euYpvU/j3X/1lbHrMPy/8pWvMHPmTEJDQwGYO3cudrv9P768VIvVaiUsLIz6+npvva6uDqvVSmhoKE6nE5fLhb+/v7feFRe72sftdl/VVTJ9xdVe7eN2u3W1yZf0lRdXTxqo462x6z4dXe3T4enm7Nmz+dOf/sTp06dxuVzs2rWLuLg4qqqqqK6uxuVyUVxcTHR0NOHh4QQGBlJeXg5AYWEh0dHRBAQEEBUVhc1ma1MXEZHe0eGZ/5QpU/jRj35ESkoKLS0t3HTTTdx9991cf/31LF++nObmZmJiYoiLiwMgJyeHzMxMGhsbiYiIIC0tDYCsrCwyMjLIz89nzJgxbNiwods701Mf9PXkB2zLlv2YJUvuJTBwMIWFW8nIWN0jxxER+bJOXee/cOFCFi5c2KY2c+ZMioqK2m07adIktmzZ0q4eHh7O5s2br7CZndNTH/T54gO2SZMiyMiI6NFjiIj8i5Z36EZ/+cs+8vM34nK5GT58OH5+/u3W4j9//jyPP/4on3xSyejR/49Tp056933uuWfYtOkZDh2qZt26NZw5c5rBg4fwwAO/4Otfv6F3OyciA4rCv5sdPnyILVuKKSrazsiRI4mPn4/T6SQpKYG77/4eNttOAF55ZQuHDx/i+9+/u91jPProahYvvoeYmDlUVHxEZuZDvPbaNgYNGuTr7ojIAKXw72Zjx44jKCjokmvxf/hhObffnvTPba/lG9+Y3Gb/s2fPcuTIEWJi5gAQGfkNhg8fzqFD1YwfP8Hn/RGRgUnh380CAy984PzUU7nU1Bzl1lvjiI6+hX37Pvjn9x1MeDz/vqzzy5fMAng87nbfi/B4LnzfQkSkuwyMb0j1QZdaiz8q6kbeeqsEt9vNP/5xjI8+OtBmv2HDgggPv4bS0ncAqKj4iOPHG7j++q/1RjdEZIAaUGf+reeb/3llTvc/blctXnzPRdfiT0q6i6qqv5OaupDRo8dcNNQffvhR1q//Fc8++78EBAxizZp1BAQEdEdXRESAAbaef3+l9fy7l9aE7780dt3nqr/hKyIiA4/CX0TEgPp9+PeTWaseY/T+i8iV6dfh7+fnj8vV2tvN6FUuVyt+fv4dbygi8iX9OvyHDAnizJmTba6bNxKPx82ZMycYMuTSH+qIiFxMv77UMyhoBCdO1OFwHAH67/SHn58fbveVvIGZGDRoMEFBI7q9TSIysPXr8DeZTISGdu1HYfoiiyV4wF66JyJ9U7+e9hERkSuj8BcRMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIG1Klv+KalpdHQ0IDZfGHz//mf/+HQoUPk5+fT0tLCPffcQ2pqKgBlZWWsXbuW5uZm4uPjWbFiBQCVlZVkZmbidDqJiooiOzvb+3giIuJbHZ75ezwevvjiC3bs2OH9M3r0aHJzc3n11VfZsWMHv/3tb/n8889pampi5cqV5OXlYbPZqKiooLS0FID09HRWr15NSUkJHo+HgoKCHu+ciIhcXIfh/8UXX2AymViyZAm33347L7/8MmVlZcyYMYOQkBCGDh1KbGwsdrudAwcOMG7cOMaOHYvZbCYxMRG73c7Ro0dpampi6tSpACQlJWG323u6byIicgkdhv/p06eZOXMmv/nNb3jhhRd4/fXXqampwWKxeLexWq04HA5qa2s7VbdYLDgcjm7uioiIdFaHk+7Tpk1j2rRpAAwdOpSFCxeydu1a7r333jbbmUymi/6q1OXqXXG5HyIeCCyW4N5ugvQjer70X31l7DoM/3379tHS0sLMmTOBC58BhIeHU19f792mtrYWq9VKWFhYp+p1dXVYrV1birmhwYnb3X/X7L8cLencvfrKi6snDdTni8au+/j5mS570tzhtM+ZM2dYt24dzc3NOJ1Otm/fzvr163n//fc5fvw4586d48033yQ6OpopU6ZQVVVFdXU1LpeL4uJioqOjCQ8PJzAwkPLycgAKCwuJjo7uvl6KiEiXdHjmP3v2bPbv388dd9yB2+0mJSWFb33rW6xYsYK0tDRaWlpYuHAhkydPBuCxxx5j+fLlNDc3ExMTQ1xcHAA5OTlkZmbS2NhIREQEaWlpPdszERG5JJPnYhPyfZCmfaSzLJZgvliT3NvN6DHXr9o6YJ8vGrvuc9XTPiIiMvAo/EVEDEjhLyJiQAp/EREDUviLiBiQwl9ExIAU/iIiBqTwFxExIIW/iIgBKfxFRAxI4S8iYkAKfxERA1L4i4gYkMJfRMSAFP4iIgak8BcRMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIGpPAXETGgTof/448/TkZGBgCVlZUkJycTGxvLqlWraG1tBaCmpobU1FTi4uJYunQpjY2NAJw+fZof//jHxMfHk5qaSl1dXQ90RUREOqtT4f/++++zfft27+309HRWr15NSUkJHo+HgoICALKzs0lJScFutxMZGUleXh4ATz75JFFRUbzxxhvcddddrFmzpge6IiIindVh+J88eZLc3FzuvfdeAI4ePUpTUxNTp04FICkpCbvdTktLC3v37iU2NrZNHeCPf/wjiYmJAMyfP5/33nuPlpaWnuiPiIh0Qofh//DDD7NixQqGDx8OQG1tLRaLxXu/xWLB4XBw4sQJgoKCMJvNber/uY/ZbCYoKIjjx493e2dERKRzzJe783e/+x1jxoxh5syZbNu2DQCPx9NuO5PJdMn6pfj5de2z5lGjgrq0fX9jsQT3dhOkH9Hzpf/qK2N32fC32WzU1dWxYMECTp06xdmzZzGZTNTX13u3qaurw2q1EhoaitPpxOVy4e/v760DWK1W6uvrGT16NK2trTidTkJCQrrU0IYGJ253+zeYgcBiCaau7kxvN2PA6Csvrp40UJ8vGrvu4+dnuuxJ82VPv59//nmKi4vZsWMHP/vZz5gzZw5r164lMDCQ8vJyAAoLC4mOjiYgIICoqChsNlubOkBMTAyFhYXAhTeUqKgoAgICuqN/IiJyBS575n8pOTk5ZGZm0tjYSEREBGlpaQBkZWWRkZFBfn4+Y8aMYcOGDQDcf//9ZGRkkJCQQHBwMDk5Od3XAxER6TKT52KT9X2Qpn2ksyyWYL5Yk9zbzegx16/aOmCfLxq77nNV0z4iIjIwKfxFRAxI4S8iYkAKfxERA1L4i4gYkMJfRMSAFP4iIgak8BcRMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIGpPAXETEghb+IiAEp/EVEDEjhLyJiQAp/EREDUviLiBiQwl9ExIAU/iIiBtSp8P/1r3/NbbfdRkJCAs8//zwAZWVlJCYmMm/ePHJzc73bVlZWkpycTGxsLKtWraK1tRWAmpoaUlNTiYuLY+nSpTQ2NvZAd0REpDM6DP8PPviA3bt3U1RUxNatW9m8eTOffPIJK1euJC8vD5vNRkVFBaWlpQCkp6ezevVqSkpK8Hg8FBQUAJCdnU1KSgp2u53IyEjy8vJ6tmciInJJHYb/jTfeyEsvvYTZbKahoQGXy8Xp06cZN24cY8eOxWw2k5iYiN1u5+jRozQ1NTF16lQAkpKSsNvttLS0sHfvXmJjY9vURUSkd3Rq2icgIICNGzeSkJDAzJkzqa2txWKxeO+3Wq04HI52dYvFgsPh4MSJEwQFBWE2m9vURUSkd5g7u+HPfvYzlixZwr333svBgwfb3W8ymfB4PF2qd8WoUUFd2r6/sViCe7sJ0o/o+dJ/9ZWx6zD8//73v3P+/Hm+/vWvM2TIEObNm4fdbsff39+7TW1tLVarlbCwMOrr6731uro6rFYroaGhOJ1OXC4X/v7+3npXNDQ4cbvbv4kMBBZLMHV1Z3q7GQNGX3lx9aSB+nzR2HUfPz/TZU+aO5z2OXLkCJmZmZw/f57z58/zhz/8gUWLFlFVVUV1dTUul4vi4mKio6MJDw8nMDCQ8vJyAAoLC4mOjiYgIICoqChsNlubuoiI9I4Oz/xjYmLYv38/d9xxB/7+/sybN4+EhARCQ0NZvnw5zc3NxMTEEBcXB0BOTg6ZmZk0NjYSERFBWloaAFlZWWRkZJCfn8+YMWPYsGFDz/ZMREQuyeS52IR8H6RpH+ksiyWYL9Yk93Yzesz1q7YO2OeLxq77XPW0j4iIDDwKfxERA1L4i4gYkMJfRMSAFP4iIgak8BcRMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIG1Olf8jKSkSMGYR4U6NNj+vJHLFrPN3Pi1HmfHU9E+h6F/0WYBwUO+GVlQeEvYmSa9hERMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIGpPAXETGgToX/pk2bSEhIICEhgXXr1gFQVlZGYmIi8+bNIzc317ttZWUlycnJxMbGsmrVKlpbWwGoqakhNTWVuLg4li5dSmNjYw90R0REOqPD8C8rK+NPf/oT27dvp7CwkI8//pji4mJWrlxJXl4eNpuNiooKSktLAUhPT2f16tWUlJTg8XgoKCgAIDs7m5SUFOx2O5GRkeTl5fVsz0RE5JI6DH+LxUJGRgaDBg0iICCAr33taxw8eJBx48YxduxYzGYziYmJ2O12jh49SlNTE1OnTgUgKSkJu91OS0sLe/fuJTY2tk1dRER6R4cLu02YMMH794MHD2Kz2fje976HxWLx1q1WKw6Hg9ra2jZ1i8WCw+HgxIkTBAUFYTab29S7YtSooC5tL5fny1VEpftp/PqvvjJ2nV7V87PPPuMnP/kJDz30EGazmaqqqjb3m0wmPB5Pu/0uV++KhgYnbnf7x+kJfWVwelJd3ZnebkKP0fj1Xxq77uPnZ7rsSXOnPvAtLy/nnnvu4cEHH+TOO+8kLCyM+vp67/21tbVYrdZ29bq6OqxWK6GhoTidTlwuV5u6iIj0jg7D/9ixY9x3333k5OSQkJAAwJQpU6iqqqK6uhqXy0VxcTHR0dGEh4cTGBhIeXk5AIWFhURHRxMQEEBUVBQ2m61NXUREekeH0z7PPvsszc3NPPbYY97aokWLeOyxx1i+fDnNzc3ExMQQFxcHQE5ODpmZmTQ2NhIREUFaWhoAWVlZZGRkkJ+fz5gxY9iwYUMPdUlERDrSYfhnZmaSmZl50fuKiora1SZNmsSWLVva1cPDw9m8efMVNFFERLqbvuErImJACn8REQNS+IuIGJDCX0TEgBT+IiIGpPAXETEghb+IiAEp/EVEDEjhLyJiQAp/EREDUviLiBiQwl9ExIAU/iIiBqTwFxExIIW/iIgBKfxFRAxI4S8iYkAKfxERA1L4i4gYkMJfRMSAFP4iIgak8BcRMSCFv4iIAXU6/J1OJ/Pnz+fIkSMAlJWVkZiYyLx588jNzfVuV1lZSXJyMrGxsaxatYrW1lYAampqSE1NJS4ujqVLl9LY2NjNXRERkc7qVPjv37+fu+++m4MHDwLQ1NTEypUrycvLw2azUVFRQWlpKQDp6emsXr2akpISPB4PBQUFAGRnZ5OSkoLdbicyMpK8vLye6ZGIiHSoU+FfUFBAVlYWVqsVgAMHDjBu3DjGjh2L2WwmMTERu93O0aNHaWpqYurUqQAkJSVht9tpaWlh7969xMbGtqmLiEjvMHdmozVr1rS5XVtbi8Vi8d62Wq04HI52dYvFgsPh4MSJEwQFBWE2m9vURUSkd3Qq/P+Tx+NpVzOZTF2ud8WoUUFd2l4uz2IJ7u0myFXQ+PVffWXsrij8w8LCqK+v996ura3FarW2q9fV1WG1WgkNDcXpdOJyufD39/fWu6KhwYnb3f5NpCf0lcHpSXV1Z3q7CT1G49d/aey6j5+f6bInzVd0qeeUKVOoqqqiuroal8tFcXEx0dHRhIeHExgYSHl5OQCFhYVER0cTEBBAVFQUNputTV1ERHrHFZ35BwYG8thjj7F8+XKam5uJiYkhLi4OgJycHDIzM2lsbCQiIoK0tDQAsrKyyMjIID8/nzFjxrBhw4bu64WIiHRJl8L/nXfe8f595syZFBUVtdtm0qRJbNmypV09PDyczZs3X0ETRUSku+kbviIiBqTwFxExIIW/iIgBKfxFRAxI4S8iYkAKfxERA1L4i4gYkMJfRMSAFP4iIgak8BcRMSCFv4iIASn8RUQMSOEvImJACn8REQNS+IuIGJDCX0TEgBT+IiIGpPAXETEghb+IiAEp/EVEDEjhLyJiQAp/EREDUviLiBiQwl9ExIB8Gv47d+7ktttu49Zbb+WVV17x5aFFRORLzL46kMPhIDc3l23btjFo0CAWLVrE9OnTGT9+vK+aICIi/+Sz8C8rK2PGjBmEhIQAEBsbi91uZ9myZZ3a38/P1IOta888wuLT4/mar/89fU3j139p7HxzHJ+Ff21tLRbLvwfVarVy4MCBTu8/cuSwnmjWJV277GmfHs/XRo0K6u0m9CiNX/+lsfMNn835ezyedjWTaeCevYiI9GU+C/+wsDDq6+u9t2tra7Farb46vIiIfInPwn/WrFm8//77HD9+nHPnzvHmm28SHR3tq8OLiMiX+GzOPywsjBUrVpCWlkZLSwsLFy5k8uTJvjq8iIh8iclzscl4EREZ0PQNXxERA1L4i4gYkMJfRMSAFP4iIgak8O+iI0eOMHHiRB5++OE29crKSiZOnMi2bdt80o5Vq1bx0Ucf+eRYRpCSkkJxcXGb2tmzZ5k+fTrHjx/vpVZJZ2VnZ7NgwQJuu+02IiMjWbBgAQsWLGDy5Mk4HI7ebl6f5LNLPQeSkJAQdu3ahcvlwt/fHwCbzUZoaKjP2rBmzRqfHcsIkpKSKC4uZv78+d7am2++yfTp0306rnJlsrKygAsnZ2lpaezYsaOXW9T3KfyvwLBhw5g0aRJ79+5lxowZAPz5z39m1qxZALz33nts3LiR1tZWrrnmGh599FFGjhzJnDlzmDx5MpWVlbz66qvs3LmT1157DX9/f2bPnk16ejoZGRnceOONJCUlATBx4kQ+/fRTnnrqKT788EOOHTtGamqqd1G86dOn8/TTT1NUVIS/vz833XQT6enp3jcl6Zz4+HjWrVvHyZMnvYsPFhUVsXjxYh566CE+++wzXC4XS5YsYf78+Wzbto1du3Zx6tQpDh8+zE033cQjjzzCnj172LRpE5s3bwbwjue8efP4+c9/7v2W+3333cfcuXN7q7uGMWfOHF566SXGjBnDunXr+OCDD3C5XCQlJXHPPfewZ88e1q9fj9vtZsKECVxzzTVtXmcTJkwgNzeXpqYmTp06RXp6OvHx8b3drW6haZ8rFB8fT0lJCQAHDhxg4sSJBAQEcPz4cZ544gmeffZZCgsLufnmm8nJyfHuFx0dTUlJCUePHuXVV19ly5YtFBUV8fHHH1NRUXHZY54/fx6bzUZqaqq3VlpayjvvvMO2bdvYvn071dXVvP766z3T6QFs2LBhzJ07F7vdDlxYgryqqop9+/Zxww03sG3bNl555RWefvppDh8+DMBf//pXNm7cSFFREe+++y6ffvrpJR//rbfeIjw8nG3btrF+/Xr27dvnk37JBQUFBQBs376dLVu28Ic//ME7BgcPHuTFF1/k8ccfB9q+zl5++WV++ctfsn37dtasWUNeXl6v9aG76cz/Cs2ePZsnn3wSt9vNG2+8QXx8PDabjcGDB3Ps2DHS0tIAcLvdjBgxwrvflClTANi7dy+zZ88mODgYgBdeeKHDY17sG9G7d+8mISGBwYMHA5CcnExhYWGbNwjpnOTkZJ588kkWLVrEzp07uf3229m1axdNTU1s3boVuPA5wGeffQbAtGnTCAq6sELj2LFjOXXq1CUfe9q0aWzYsAGHw8Ett9zCfffd1/MdEq/333+fyspKdu/eDVwYx08//ZTx48dz3XXXeV+H0PZ1tn79et59913sdjv79++nsbHR523vKQr/KxQUFMSkSZMoLy9n9+7dPPjgg9hsNlwuF9/85jd5+ukLy9I2Nze3ecIEBgYCYDa3/ad3OBwMGTIEk8nkXQG1paWlzTb/Cvgvc7vd7Wqtra1X1zmDioqKoq6ujmPHjlFUVMSmTZsoLS1l/fr13HDDDQDU19czYsQIdu7c6R1LwDtuXx4/+PcYfvWrX+WNN95g165dvPvuuzz33HO88cYbWtnWR1wuF+np6cybNw+A48ePM3ToUPbv39/udfXl2ykpKUyfPp3p06czc+ZMfvGLX/i03T1J0z5XIT4+nieeeILIyEhvmDc3N/Phhx9SVVUFQF5eHuvWrWu3b1RUFO+99x6NjY20trby4IMPUlFRQUhICJ9//jkAb7/9dodtmDFjBr///e9pamqitbWVrVu3ej+HkK678847yc/PZ8SIEVx77bXMmDGD1157DbiwEu3tt9/OsWPHLrn/yJEjOXz4MM3NzZw8eZLy8nIAXn75ZZ566ini4+PJysri+PHjnDlzxid9kguvk4KCAlpaWmhsbCQlJYX9+/dfdp+TJ09y8OBB7r//fmJiYvjzn/+My+XyUYt7ns78r8Ls2bNZtWoV999/v7f2la98hV/96lc88MADuN1uwsLCWL9+fbt9b7jhBhYvXsyiRYtwu93ceuutzJo1i7Fjx/LAAw+QmJjIjBkz2vwAzqXaUFlZSXJyMq2trXz7299m8eLF3d5Xo7jjjjuYO3eu92qqZcuW8cgjjzB//nzv2eO11157yTn7CRMmEBMTQ0JCAuHh4XzrW9/yPu7Pf/5zEhMTMZvNLFu2jOHDh/usX0a3aNEiqqurufPOO2ltbSUpKYnp06ezZ8+eS+4TEhLCXXfdRUJCAkFBQUydOpWmpibOnj3L0KFDfdj6nqGF3UREDEjTPiIiBqTwFxExIIW/iIgBKfxFRAxI4S8iYkAKfxERA1L4i4gYkMJfRMSA/j92LTglHYnqSwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.plot.bar(stacked=True, rot=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Utilizando Groupby\n", "\n", "\n", "__[Panda's groupby](https://pandas.pydata.org/pandas-docs/version/0.23.1/api.html#groupby)__ \n", "\n", "__[Panda's DataFrameGroupBy aggr](https://pandas.pydata.org/pandas-docs/version/0.23.1/generated/pandas.core.groupby.DataFrameGroupBy.agg.html)__\n", "\n", "La función groupby puede ser beneficiosa. Por ejemplo, si queremos saber qué temperatura promedio tiene cada mes se hace lo siguiente:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "# Este celda agrega una columna month_number la cual tiene el número del mes.\n", "# Por ejemplo, para una fila que tiene jan como mes, el valor de month_number será 1.\n", " \n", "def month_number(month):\n", " if 'jan' == month:\n", " return 1\n", " elif 'feb' == month:\n", " return 2\n", " elif 'mar' == month:\n", " return 3\n", " elif 'apr' == month:\n", " return 4\n", " elif 'may' == month:\n", " return 5\n", " elif 'jun' == month:\n", " return 6\n", " elif 'jul' == month:\n", " return 7\n", " elif 'aug' == month:\n", " return 8\n", " elif 'sep' == month:\n", " return 9\n", " elif 'oct' == month:\n", " return 10\n", " elif 'nov' == month:\n", " return 11\n", " elif 'dec' == month:\n", " return 12\n", " return 0\n", "\n", "data[\"month_number\"] = data[\"month\"].map(month_number)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
temp
month_number
15.250000
29.635000
313.083333
412.044444
514.650000
620.494118
722.109375
821.631522
919.612209
1017.093333
1111.800000
124.522222
\n", "
" ], "text/plain": [ " temp\n", "month_number \n", "1 5.250000\n", "2 9.635000\n", "3 13.083333\n", "4 12.044444\n", "5 14.650000\n", "6 20.494118\n", "7 22.109375\n", "8 21.631522\n", "9 19.612209\n", "10 17.093333\n", "11 11.800000\n", "12 4.522222" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Ahora, agruparemos los datos según la nueva columna month_number\n", "temperaturas_por_mes = data.groupby(\"month_number\")\n", "\n", "# Finalmente, sacaremos el promedio de las temperaturas por mes\n", "temperaturas_por_mes.agg({'temp' : 'mean'})" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" } }, "nbformat": 4, "nbformat_minor": 2 }